package br.com.LeitorLog.gui;

import java.awt.BorderLayout;
import java.text.SimpleDateFormat;
import java.util.ArrayList;

import javax.swing.JPanel;
import javax.swing.JScrollPane;
import javax.swing.JTable;
import javax.swing.table.DefaultTableModel;

import br.com.LeitorLog.basicas.Item;
import br.com.LeitorLog.gui.util.ConstantesGUI;

/**
 * PainelTabela
 *
 * @since 04/03/2013 16:37:38
 */
public class PainelTabela extends JPanel {
	/**
	 * 
	 */
	private static final long serialVersionUID = 1L;
	
	private	JTable		table;
	private	JScrollPane scrollPane;
//	private ItemTableModel myModel;
	private DefaultTableModel model = new DefaultTableModel(); 

	public PainelTabela() {
		setLayout(new BorderLayout(0, 0));
		
//		// Create columns names
//		String columnNames[] = { "Column 1", "Column 2", "Column 3" };
//
//		// Create some data
//		String dataValues[][] =
//		{
//			{ "12", "234", "67" },
//			{ "-123", "43", "853" },
//			{ "93", "89.2", "109" },
//			{ "279", "9033", "3092" }
//		};

		// Create a new table instance
//		table = new JTable( dataValues, columnNames );
		popularGrid();
		
//		ArrayList<Item> lista = new ArrayList<Item>();
//		
//		Item item = new Item();
//		
//		item.setDataInclusao(new Date());
//		item.setDescricao("1h sword");
//		item.setLegendario(true);
//		item.setTipo("sword");
//		item.setScore(15000);
//		
//		lista.add(item);
//		
//		popularValores(lista);

		// Add the table to a scrolling pane
		scrollPane = new JScrollPane( table );
		
		this.add(scrollPane, BorderLayout.CENTER);
	}
	
	public void popularValores(ArrayList<Item> listaItens) {
		
		for (Item vItem : listaItens) {
			String data = new SimpleDateFormat("dd-MM-yyyy hh:mm:ss").format(vItem.getDataInclusao());
			String descricao = vItem.getDescricao();
			String isLeg = vItem.isLegendario()?ConstantesGUI.Mensagens.SIM:ConstantesGUI.Mensagens.NAO;
			String tipo = vItem.getTipo();
			String score = vItem.getScore() + "";
			
			model.addRow(new Object[] {data, descricao, isLeg, tipo, score});
		}
	}

	public void popularGrid() {
//		ArrayList<Item> lista = new ArrayList<Item>();
//		String[] headers = {"Data", "Descricao", "É legendário?", "Tipo", "Score"};
//		myModel = new ItemTableModel(lista, headers);
		
		
		model.addColumn(ConstantesGUI.Mensagens.COLUNA_DATA);
		model.addColumn(ConstantesGUI.Mensagens.COLUNA_DESCRICAO);
		model.addColumn(ConstantesGUI.Mensagens.COLUNA_LEGENDARIO);
		model.addColumn(ConstantesGUI.Mensagens.COLUNA_TIPO);
		model.addColumn(ConstantesGUI.Mensagens.COLUNA_SCORE);
		
		table = new JTable(model);
//		table = new JTable(dataValues, headers);
	}
	
}
